// TODO: java版临时注释 应该用不到了
// package com.inspur.edp.bef.dtgenerator.config;
//
//
// import com.fasterxml.jackson.core.JsonProcessingException;
// import com.fasterxml.jackson.databind.ObjectMapper;
// import com.inspur.edp.bef.dtgenerator.BEGeneratorContext;
// import com.inspur.edp.bef.dtgenerator.DotNetToJavaStringHelper;
// import com.inspur.edp.bef.dtgenerator.common.Utils;
// import com.inspur.edp.lcm.metadata.api.entity.GspProject;
// import java.io.File;
//
// public class DeployConfigGenerator {
//  public static final String ConfigFileName = "deployconfig.json";
//  private BEGeneratorContext beGenCtx;
//
//  public DeployConfigGenerator(BEGeneratorContext beGenCtx) {
//    this.beGenCtx = beGenCtx;
//  }
//
//  public final void generate() {
//    String configContent = null;
//    try {
//      configContent = new ObjectMapper().writeValueAsString(getGenConfig());
//    } catch (JsonProcessingException e) {
//      throw new RuntimeException(e);
//    }
//    Utils.fsService()
//        .CreateFile(
//            new File(beGenCtx.getRelativeGeneratePath(), ConfigFileName).getPath(),
//            configContent,
//            true,
//            true); // 将配置写回文件
//  }
//
//  private DeployConfig getGenConfig() {
//    // var suName = GetSUName();
//    GspProject projectInfo = getProjectInfo(beGenCtx.getMetadataPath());
//
//    String serverPath;
//    if (DotNetToJavaStringHelper.isNullOrEmpty(beGenCtx.getServerPath())) {
//      serverPath = Path.GetFullPath(GspEnvironment.RootPath);
//    } else {
//      serverPath = Path.GetFullPath(beGenCtx.getServerPath());
//    }
//
//    DeployConfig tempVar = new DeployConfig();
//    tempVar.setRuntimePath(Path.Combine(serverPath, projectInfo.SUDeploymentPath));
//    tempVar.setConfigPath(Path.Combine(serverPath, projectInfo.SUConfigDeploymentPath));
//    tempVar.setServerPath(serverPath);
//    DeployConfig config = tempVar;
//
//    return config;
//  }
//
//  private GspProject getProjectInfo(String metadataPath) {
//    var service = ServiceManager.<IMetadataProjectService>GetService();
//    var metadataInfo = service.getMetadataProjInfo(metadataPath);
//    return service.GetGspProjectInfo(metadataInfo.ProjectPath);
//  }
//
//  private static class DeployConfig {
//    private String privateRuntimePath;
//    private String privateConfigPath;
//    private String privateServerPath;
//
//    public final String getRuntimePath() {
//      return privateRuntimePath;
//    }
//
//    public final void setRuntimePath(String value) {
//      privateRuntimePath = value;
//    }
//
//    public final String getConfigPath() {
//      return privateConfigPath;
//    }
//
//    public final void setConfigPath(String value) {
//      privateConfigPath = value;
//    }
//
//    public final String getServerPath() {
//      return privateServerPath;
//    }
//
//    public final void setServerPath(String value) {
//      privateServerPath = value;
//    }
//  }
// }
